Options
All
  • Public
  • Public/Protected
  • All
Menu

Class BPNet

Hierarchy

  • BPNet

Index

Constructors

constructor

Properties

b

b: Matrix[]

偏值

hlayer

hlayer: number

隐藏层层数

mode

mode: Mode = 'sgd'

梯度更新模式

rate

rate: number = 0.01

学习率

Optional scale

scale: Matrix

缩放比

Readonly shape

shape: NetShape

w

w: Matrix[]

权值

Methods

adjust

  • 调整权值偏值

    • w = w - α * (∂J / ∂w)
    • b = b - α * (∂J / ∂hy)

    Parameters

    Returns void

af

  • 获取当前层激活函数

    Parameters

    • l: number

    Returns undefined | ActivationFunction

backPropagation

  • 多样本求导, 计算单个样本倒数求和,然后计算平均倒数

    Parameters

    Returns { dw: Matrix[]; dy: Matrix[] }

bgd

  • 标准梯度下降, 全部样本导数的平均值

    Parameters

    Returns Promise<void>

calcBackPropagation

  • 单样本求导,对每个输出单元的求导,对每个权重的求导

    • J = 1 / 2 * (hy - y)^2
    • ∂J / ∂hy[last] = (1 / 2) * 2 * (hy - y) = (hy - y) * hy[激活函数求导]
    • ∂J / ∂w = dy.T * lastHy
    • ∂J / ∂hy[now] = (nextDy * nextW) * hy[激活函数求导]

    链式求导法则:

    • 反向的计算过程;
    • 分支节点相加;链路节点相乘法;
    • 如有激活函数需乘激活函数的导数;

    Parameters

    Returns { dw: Matrix[]; dy: Matrix[] }

calcLoss

  • 计算一组样本的当前损失

    Parameters

    Returns number

checkInput

  • checkInput(xs: Matrix): void
  • Parameters

    Returns void

checkOutput

  • checkOutput(ys: Matrix): void
  • Parameters

    Returns void

checkSample

  • Parameters

    Returns void

cost

  • 平方差带价函数 多输出求平均值

    • J = 1 / 2 * m * ∑m(hy - ys) ** 2

    Parameters

    Returns number

fit

forwardPropagation

  • 计算整个网络输出

    • layer[hy][t-1] * w[t] + b
    • hy = θ1 * X1 + θ2 * X2 + ... + θn * Xn + b

    Parameters

    Returns Matrix[]

mbgd

  • 批量梯度下降, 多个样本导数的平均值

    Parameters

    Returns Promise<void>

predict

  • 预测最后一层输出

    Parameters

    Returns Matrix

predictNet

  • 预测整个网络,包含输入层

    Parameters

    Returns Matrix[]

scaled

  • 按照缩放比缩放新的特征

    Parameters

    Returns Matrix

sgd

  • 随机梯度下降, 单个样本的导数

    Parameters

    Returns Promise<void>

toJSON

  • toJSON(): string
  • Returns string

    json字符串

unit

  • unit(l: number): number
  • 获取当前层单元数

    Parameters

    • l: number

    Returns number

Static fromJSON

  • fromJSON(json: string): BPNet
  • 加载json化的模型

    Parameters

    • json: string

    Returns BPNet

    BPNet

Generated using TypeDoc